#include <stdio.h>
/*
 * 自增运算符和取值运算符
 * 后++的情况：先赋值，后++
 * 前++的情况：先++，后赋值
 */
int main() {
    //后++
    int a[3]={2,7,8};
    int *p;
    int j;
    p=a;
    j=*p++; //先把*p 的值赋给 j，然后对 p 加 1；    得到结果j=2,a[0]=2,*p=7
    printf("a[0]=%d,j=%d,*p=%d\n",a[0],j,*p);
    j=p[0]++; //先把 p[0]赋给 j，然后对 p[0]加 1；    得到结果j=7,a[0]=2,*p=8
    printf("a[0]=%d,j=%d,*p=%d\n",a[0],j,*p);
//-----------------------------------------------------------------------------
    //前++
//    int a[3]={2,7,8};
//    int *p;
//    int j;
//    p=a;
//    j=++*p; //先把*p++，再把*p赋给j；    得到结果j=3,a[0]=3,*p=3
//    printf("a[0]=%d,j=%d,*p=%d\n",a[0],j,*p);
//    j=++p[0]; //先把 p[0]++，再把p[0]赋给j；    得到结果j=4,a[0]=4,*p=4
//    printf("a[0]=%d,j=%d,*p=%d\n",a[0],j,*p);
//    return 0;
}
